package array;

import java.util.ArrayList;
import java.util.List;

public class test1 {


    public static List<String> mySplit(String src, String target) {
        List<String> list = new ArrayList<>();
        char[] srcArray = src.toCharArray();
        char[] targetArray = target.toCharArray();
        int srcLength = srcArray.length;
        int targetLength = targetArray.length;
        StringBuffer buffer = new StringBuffer();
        for (int i = 0; i < srcLength; i++) {
            boolean isMatch = true;
            // 检查当前位置是否匹配 target
            if (i + targetLength <= srcLength) {
                for (int j = 0; j < targetLength; j++) {
                    if (srcArray[i + j] != targetArray[j]) {
                        isMatch = false;
                        break;
                    }
                }
            } else {
                isMatch = false;
            }
            // 如果匹配，将当前 buffer 内容添加到 list 中，并跳过匹配的部分
            if (isMatch) {
                if (buffer.length() > 0) {
                    list.add(buffer.toString());
                    buffer.setLength(0); // 清空 buffer
                }
                i += targetLength - 1; // 跳过 target 的长度
            } else {
                // 未匹配时，将字符加入 buffer
                buffer.append(srcArray[i]);
            }
        }
        // 添加最后剩余的内容
        if (buffer.length() > 0) {
            list.add(buffer.toString());
        }
        return list;
    }




}
